#ifndef ENTRERTTRAITS_H
#define ENTRERTTRAITS_H

#include "BaseUI.h"
#include <vector>

class QLabel;
class QSpinBox;
class QGridLayout;
class QString;

/**
 * Classe permettant de déterminer les traits de base (non modifiés)
 * d'un personnage.
 *
 * Les différents traits sont affichés avec un spinbox, qui permet
 * d'entrer la valeur obtenue aux dés pour chaque trait. Les nombres
 * tolérés sont entre 3 et 19 (compris).
 *
 * Ici on ne demande pas la valeur de l'éventuel score de force
 * exceptionnelle, cela est fait au moment de la détermination de la
 * Classe.
 *
 * @author Johan "Solo" Luisier
 */
class EntrerTraits : public BaseUI
{
  Q_OBJECT
 public:
  EntrerTraits(QWidget* parent = 0);
  ~EntrerTraits();
  StatusCode demanderTraits(std::vector< unsigned int >& tab);
 protected:
 private:
  /**
   * Contient les noms des traits, nécessaire pour
   * l'affichage. L'attribut est static pour raison d'optimisation.
   */
  static QString NomTraits[6];
  /**
   * Conteneur des spinbox permettant de fixer les valeurs des
   * différents traits.
   */
  std::vector<QSpinBox *> valeurs;
};

#endif // ENTRERTTRAITS_H
